package com.xjm.i1.core.resolver;

import com.xjm.i1.constant.AreaEnum;
import com.xjm.i1.core.struct.node.load.I1AreaCollections;

/**
 * i1数据解析器顶层接口
 * */
public interface MetaDataResolver {

    /**
     * 解析为加载数据的区域数据
     * @param metaData 原始数据二维数组
     * @return I1AreaCollections 加载数据的区域数据
     * */
    I1AreaCollections resolve(Double[][] metaData) throws NoSuchFieldException, IllegalAccessException;

    /**
     * 检查解析的区域是否匹配解析器
     * @param areaEnum 解析区域
     * @return boolean 是否匹配
     * */
    boolean resolverMatch(AreaEnum areaEnum);
}
